/*
 * Copyright (c) 2012 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
var gigyaLoginCallback = new Object();

gigyaLoginCallback.conf = {};
gigyaLoginCallback.onLogin = function(eventObj) {
	$.ajax({
	  url: gigyaLoginCallback.conf.url,
	  type : "POST",
	  data: {
	  	UID:eventObj.UID,
	  	signatureTimestamp:eventObj.signatureTimestamp,
	  	UIDSignature:eventObj.UIDSignature,
	  	rememberMe:$(gigyaLoginCallback.conf.snsRemembeMeId).is(':checked'),
		jsonUser:$.toJSON(eventObj.user)
	  },
	  success: function(data, textStatus, jqXHR){
		if( data.redirectURL != undefined ) {
			// In case we received a Redirect Instruction
			window.location = data.redirectURL;
		}
	  	if( data.result != undefined ) {
	  		if (data.result == 'success') {
	  			//Refresh the Page
	  			window.location.reload();
	  		} else {
	  			$(gigyaLoginCallback.conf.gigyaErrorId).html('<span>'+data.errormsg+'</span>');
	  			$(gigyaLoginCallback.conf.gigyaErrorId).removeClass('invisible');
	  		}
	  	}
	  }
	});	
};

gigya.services.socialize.addEventHandlers(gigyaConf, {   
    onLogin:gigyaLoginCallback.onLogin  
});

Tapestry.Initializer.setupGigyaLoginCallbackConf = function(confObj){
	gigyaLoginCallback.conf = confObj;
};